Packet switching systems typically transmit packets containing a specified fixed number of data bytes between system ports. However, it is rare that the data to be transmitted by a port at any given time can be formed into the number of bytes required to fill the specified size packet. Consequently, when a lesser amount of data is to be transmitted, such as a character or two, the transmitting port typically stuffs the remainder of the packet with null data to form a packet containing the specified number of bytes. Conversely, the system breaks a large block of data up into a plurality of packets when the data to be transmitted exceeds the specified size of a single packet.
This mode of operation has a number of disadvantages. The stuffing of a packet with null data is wasteful of system resources since a corresponding amount of system through-put is wasted in transmitting the null data. The breaking up of a large block of data into a plurality of packets is also inefficient since the transmitting port must initiate and win a new data bus arbitration operation before each packet can be transmitted. Also, the last packet normally has to be stuffed with null data.
Packet switching systems using variable length packets are known. However, these systems are atypical and they implement the techniques of variable length packets in a specialized manner that is not suitable for use in typical packet switching systems. For example, systems are known in which the header of each packet contains a byte in the beginning portion of the packet that specifies the number of bytes in the remaining portion of the packet. This is shown in the article entitled "Design and Use of Comflex-a Hardware-Controlled Packet Switch" by J. A. McDermid, published in IEE PROC., Vol. 127, Pt.E, No. 6, November, 1980. This technique performs satisfactorily but is unduly costly and complex. Other specialized arrangements using timing and the like are known, but are not of generalized applicability. Such systems are exemplified by U.S. Pat. No. 4,412,326 to J. O. Limb of Oct. 25, 1983.